package com.yanqu.road.entity.systemgroup.newmonopolymarket;

import com.yanqu.road.entity.DataObject;
import com.yanqu.road.entity.FieldTypeAnnotation;
import com.yanqu.road.entity.systemgroup.newmonopolymarket.resgrab.NewMonopolyMarketBaseBattleObjectInfo;

import java.util.List;
import java.util.Map;

@FieldTypeAnnotation(tableName = "t_c_new_monopoly_market_user_data")
public class CrossNewMonopolyMarketUserData extends DataObject {

    @FieldTypeAnnotation(desc = "每周", update = true, select = true)
    private int weekId;

    @FieldTypeAnnotation(update = true, desc = "分组id")
    private long groupId;

    @FieldTypeAnnotation(update = true, desc = "玩家")
    private long userId;

    @FieldTypeAnnotation(desc = "区服")
    private long serverId;

    @FieldTypeAnnotation(desc = "资源量")
    private long resGetNum;

    @FieldTypeAnnotation(desc = "更新时间")
    private long lastUpdate;

    @FieldTypeAnnotation(desc = "获取玩家奖励")
    private boolean getUserReward;

    @FieldTypeAnnotation(desc = "获得区服奖励")
    private boolean getServerReward;

    //缓存(最后一次战斗的队伍)
    private List<NewMonopolyMarketBaseBattleObjectInfo> objectInfoList;

    private int actionType;

    public int getWeekId() {
        return weekId;
    }

    public void setWeekId(int weekId) {
        if(this.weekId != weekId) {
            this.weekId = weekId;
            setUpdateOption();
        }
    }

    public long getGroupId() {
        return groupId;
    }

    public void setGroupId(long groupId) {
        if(this.groupId != groupId) {
            this.groupId = groupId;
            setUpdateOption();
        }
    }

    public long getUserId() {
        return userId;
    }

    public void setUserId(long userId) {
        if(this.userId != userId) {
            this.userId = userId;
            setUpdateOption();
        }
    }

    public long getServerId() {
        return serverId;
    }

    public void setServerId(long serverId) {
        if(this.serverId != serverId) {
            this.serverId = serverId;
            setUpdateOption();
        }
    }

    public long getResGetNum() {
        return resGetNum;
    }

    public void setResGetNum(long resGetNum) {
        if(this.resGetNum != resGetNum) {
            this.resGetNum = resGetNum;
            setUpdateOption();
        }
    }

    public long getLastUpdate() {
        return lastUpdate;
    }

    public void setLastUpdate(long lastUpdate) {
        if(this.lastUpdate != lastUpdate) {
            this.lastUpdate = lastUpdate;
            setUpdateOption();
        }
    }

    public boolean isGetUserReward() {
        return getUserReward;
    }

    public void setGetUserReward(boolean getUserReward) {
        if(this.getUserReward != getUserReward) {
            this.getUserReward = getUserReward;
            setUpdateOption();
        }
    }

    public boolean isGetServerReward() {
        return getServerReward;
    }

    public void setGetServerReward(boolean getServerReward) {
        if(this.getServerReward != getServerReward) {
            this.getServerReward = getServerReward;
            setUpdateOption();
        }
    }

    //cache
    public List<NewMonopolyMarketBaseBattleObjectInfo> getObjectInfoList() {
        return objectInfoList;
    }

    public void setObjectInfoList(List<NewMonopolyMarketBaseBattleObjectInfo> objectInfoList) {
        this.objectInfoList = objectInfoList;
    }

    public int getActionType() {
        return actionType;
    }

    public void setActionType(int actionType) {
        this.actionType = actionType;
    }
}

